import pandas as pd
pd.set_option('display.unicode.east_asian_width', True)
df = pd.read_excel('超市运营数据.xlsx')
data = []
for i in range(df['折扣'].size):
    if df['折扣'][i] == 0:
        data.append(1)
    else:
        data.append(df['折扣'][i])
df['总额'] = df['价格'] * df['数量'] * data
df1 = df.groupby('销售经理').agg({'总额': 'sum'})
df1['排名'] = df1.rank(method='first', ascending=False)
df1.sort_values(by='排名', ascending=True, inplace=True)
print('按销售经理的销售额降序排名和升序排序：\n', df1)
df2 = df.groupby('客户类型').agg({'总额': 'sum'})
df2['排名'] = df2.rank(method='first', ascending=False)
df2.sort_values(by='排名', ascending=True, inplace=True)
print('按客户名称的销售额降序排名和升序排序：\n', df2)
print('每个客户类型的总数：\n', df.value_counts('客户类型'))
print('价格的平均值：', df['价格'].mean())
print('价格的最大值：', df['价格'].max())
print('价格的最小值：', df['价格'].min())
df3 = pd.crosstab(index=df['客户类型'], columns=df['销售经理'])
print('客户类型和销售经理的交叉表:\n', df3)
df4 = pd.pivot_table(df, values='数量', index='计划发货天数', columns='折扣', aggfunc='sum')
print('计划发货天数、折扣和数量的透视表:\n', df4)
df5 = df[['计划发货天数', '价格', '数量', '折扣']]
print('计划发货天数、价格、数量和折扣之间的相关系数：\n', df5.corr())